*,
*:after,
*:before {
    box-sizing: border-box;

    outline: none;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    font: inherit;
    font-size: 100%;

    margin: 0;
    padding: 0;

    vertical-align: baseline;

    border: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    font-family: var(--el-font-family);
    line-height: 1;
    min-width: 800px;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;

    &:before,
    &:after {
        content: '';
        content: none;
    }
}

sub,
sup {
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

sup {
    top: -.5em;
}

sub {
    bottom: -.25em;
}

table {
    border-spacing: 0;
    border-collapse: collapse;
}

input,
textarea,
button {
    font-family: inhert;
    font-size: inherit;

    color: inherit;
}

select {
    text-indent: .01px;
    text-overflow: '';

    border: 0;
    border-radius: 0;

    -webkit-appearance: none;
    -moz-appearance: none;
}

select::-ms-expand {
    display: none;
}

code,
pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

// 滚动条样式
::-webkit-scrollbar {
    width: 16px;
}

::-webkit-scrollbar-track {
    background-color: transparent;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb {
    background-color: var(--el-color-info-light-3);
    /*border-radius: 4px;*/
    height: 24px;
    width: 24px;
    border-style: dashed;
    border-color: transparent;
    border-width: 4px;
    border-radius: 10px;
    background-clip: padding-box;
    -webkit-box-shadow: inset 0 0 5px var(--el-color-info-light-3);
}

::-webkit-scrollbar-thumb:hover {
    background-color: var(--el-color-info);
}

::-webkit-scrollbar-corner {
    background-color: transparent;
}

a {
    text-decoration: none;
    color: var(--el-color-primary);
}

/* 自定义滑动按钮 */
// ::-webkit-scrollbar-button:single-button {
//     background-color: var(--el-bg-color);
//     display: block;
//     background-size: 10px;
//     background-repeat: no-repeat;
//   }
body .el-select-dropdown__wrap {
    max-height: 300px;
}

.el-select-dropdown__list .el-select-dropdown__item {
    font-size: 13px;
    height: 28px;
    line-height: 28px;
}

.el-popconfirm .el-popconfirm__main .el-icon {
    font-size: 16px;
}

.el-radio.is-bordered.is-checked {
    background-color: var(--el-color-primary-light-9);
}

.el-popover.el-popper {
    min-width: 160px !important;
}

.el-year-table td .cell {
    height: 30px !important;
    line-height: 30px !important;
}

.el-dropdown-menu {
    padding: 5px !important;
}

.el-dropdown-menu__item {
    border-radius: 4px;
    font-size: 13px !important;
    line-height: 20px !important;
}

.el-cascader-panel {
    padding: 6px 0;

    .el-cascader-menu__list {
        padding: 0;
    }
}

.el-date-picker__header--bordered {
    border-bottom: none !important;
}

.el-date-table th {
    border-bottom: none !important;
}

.el-cascader__tags {
    align-items: center;
    right: 30;
}

body #nprogress .bar {
    background: var(--el-color-primary);
}

.elResetBody {
    .el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell {
        background-color: var(--el-fill-color);
    }

    .el-tree-node__content {
        border-radius: 6px;
    }

    .el-textarea {
        font-size: 13px;
    }

    .el-tag {
        height: 22px;
    }

    .el-tag--small {
        height: 20px;
    }

    .el-loading-mask {
        transition: opacity 0s;
        background-color: var(--el-bg-color-overlay);
    }

    .el-select__selected-item .el-tag {
        height: 18px;
    }

    .el-range-editor .el-range-input {
        font-size: 13px;
    }

    .el-select .el-select__wrapper {
        min-height: 28px;
        font-size: 13px;

        .el-select__input {
            height: 16px;
        }
    }

    .el-tabs {
        --el-tabs-header-height: 42px;
    }

    .el-tabs__item {
        font-size: 13px;
        font-weight: bold;
        margin-top: 5px;
    }

    .el-rate {
        height: 28px;
    }

    .el-rate .el-rate__icon {
        font-size: 20px;
    }

    .el-rate .el-rate__icon.is-active {
        color: var(--el-color-warning);
    }

    .el-button {
        height: 28px;
        font-size: 13px;
    }

    // .el-button.is-circle{
    //     width: 28px;
    // }
    .el-button--small {
        height: 24px;
    }

    .el-icon-button {
        .el-button {
            padding: 8px 10px;
            font-size: 14px;
        }
    }

    .el-drawer__header {
        margin-bottom: 0;
    }

    .el-drawer__body {
        padding: 0 20px;
    }

    // .el-select-dropdown__item.is-hovering {
    //     background-color: var(--el-color-info-light-8);
    // }
    .el-input {
        height: 28px;
        font-size: 13px;
    }

    .el-input__inner {
        --el-input-inner-height: 28px;
    }

    .el-table {
        font-size: 13px;
        --el-table-tr-bg-color: var(--el-bg-color-overlay);
        --el-table-header-bg-color: var(--el-bg-color-overlay);
    }

    .el-table .warning-row {
        --el-table-tr-bg-color: var(--el-color-warning-light-9);
    }

    .el-table .error-row {
        --el-table-tr-bg-color: var(--el-color-error-light-9);
    }

    .el-table.hasBorderBottom tr {
        &:last-of-type td.el-table__cell {
            border-bottom: var(--el-table-border);
        }
    }

    .el-table tr {
        &:last-of-type td.el-table__cell {
            border-bottom: none;
        }
    }

    .formTable.el-table {
        border-bottom: var(--el-table-border);
        height: 100%;
    }

    .acl-tabs {
        height: 100%;

        .el-tabs__content {
            height: calc(100% - 47px);

            .el-tab-pane {
                height: 100%;
            }
        }
    }

    .el-tabs__header {
        margin: 0;
        border-radius: 4px;
    }

    .el-button:focus-visible {
        outline: none;
    }

    .el-table thead {
        color: var(--el-text-color-primary);
    }

    .el-table .el-table__body-wrapper {
        color: var(--el-text-color-regular);
        font-size: 12px;
    }

    .el-scrollbar__bar.is-vertical {
        width: 8px;

        .el-scrollbar__thumb {
            background-color: var(--el-text-color-primary);
            cursor: default;
        }
    }

    .el-scrollbar__bar.is-horizontal {
        height: 8px;

        .el-scrollbar__thumb {
            background-color: var(--el-text-color-primary);
            cursor: default;
        }
    }

    .el-date-editor.el-input,
    .el-date-editor.el-input__wrapper {
        height: 28px;
    }

    .el-date-editor .el-range-input {
        height: 28px;
        line-height: 28px;
    }

    .el-checkbox {
        height: 28px;
    }

    .el-checkbox__label {
        font-size: 13px;
    }

    .el-transfer__button {
        display: flex;

        &:nth-child(2) {
            margin: 10px 0 0 0;
        }
    }

    .el-transfer__button i,
    .el-transfer__button span {
        font-size: 13px;
    }

    .el-transfer {
        display: flex;
        align-items: center;
        width: 100%;
        height: 100%;

        .el-transfer-panel {
            height: 100%;
            flex: 1;

            .el-transfer-panel__header .el-checkbox .el-checkbox__label {
                font-size: 13px;
            }
        }

        .el-transfer-panel__body {
            height: calc(100% - 40px);

            .el-input {
                height: 60px;
            }
        }
    }

    .el-form {
        overflow: auto;
    }

    .el-table__inner-wrapper::before {
        height: 0;
    }

    .el-table.hasBorderBottom .el-table__inner-wrapper::before {
        height: 1px;
    }

    .el-table--border .el-table__inner-wrapper::after {
        height: 1px;
    }

    .el-table--border::after {
        top: 0;
        // right: 0.8px;
    }

    .el-pagination {
        --el-pagination-font-size: 13px;
        position: relative;
        padding: 5px 0;
        display: flex;
        justify-content: center;

        &:before {
            content: '';
            height: 1px;
            width: 100%;
            background-color: var(--el-border-color-lighter);
            position: absolute;
            top: 0;
            left: 0;
        }
    }

    .el-form-item__label {
        font-size: 13px;
        // color: var(--el-text-color-primary);
        font-weight: bold;
        // height: 28px;
        // line-height: 28px;
        padding: 0 5px 0 0;
    }

    .el-form-item__content {
        font-size: 13px;
        color: var(--el-text-color-regular);
    }

    .editableTable {
        .el-form-item__content {
            height: auto !important;
            // height: 30px!important;
            // line-height: 1;
        }
    }

    .el-radio {
        height: 28px;
        line-height: 28px;
        margin-right: 28px;
    }

    .el-radio:last-child {
        margin-right: 0;
    }

    .el-radio__label {
        font-size: 13px;
        color: var(--el-text-color-primary);
    }
    .el-radio{
        --el-radio-input-height: 12px;
        --el-radio-input-width: 12px;
    }
    .el-radio__input.is-disabled.is-checked{
        .el-radio__inner {
            border-color: var(--el-color-primary);
            background: var(--el-color-primary);
            &::after { 
                background-color: var(--el-disabled-bg-color);
            }
        }
        & + span.el-radio__label{
            color: var(--el-color-primary);
        }
    } 

    .el-radio-button__inner {
        padding: 6px 15px;
    }

    .el-input-number.is-controls-right .el-input-number__increase,
    .el-input-number.is-controls-right .el-input-number__decrease {
        --el-input-number-controls-height: 12px;
    }

    .el-input-number__increase,
    .el-input-number__decrease {
        width: 28px;
    }

    .el-button-group>.el-button+.el-button {
        margin-left: 0;
    }

    .el-button+.el-button {
        margin-left: 10px;
    }

    .el-text {
        font-size: 13px;
    }

    .vxe-toolbar {
        padding: 0 0 4px;
    }

    .vxe-table--header {
        font-size: 13px;
    }

    .vxe-table--footer {
        font-weight: bold;
        color: var(--vxe-ui-table-header-font-color);
    }
    .vxe-table--footer, 
    .vxe-table--scroll-y-bottom-corner{
        background-color: var(--el-fill-color-light);
    }

    .vxe-table--filter-wrapper {
        padding: 5px;

        .vxe-table--filter-template {
            padding: 5px;
            margin-bottom: 5px;
        }

        .vxe-checkbox--icon {
            box-shadow: none !important;
        }
    }

    .vxe-table--filter-wrapper .vxe-table--filter-header {
        padding-top: 0;
    }

    .vxe-table--filter-wrapper.is--multiple>ul>li {
        padding: 5px 10px;
    }

    .vxe-table .vxe-cell--sort-vertical-layout {
        height: 1.5em;
    }

    .vxe-cell--filter {
        padding: 0.3em 0.1em 0 0.2em;
    }
    .el-menu-item:hover{
        background-color: var(--el-fill-color);
    }
}

.text-center {
    text-align: center;
}

.text-success {
    color: var(--el-color-success) !important;
}

.text-danger {
    color: var(--el-color-danger) !important;
}

.text-primary {
    color: var(--el-color-primary) !important;
}

.text-warning {
    color: var(--el-color-warning) !important;
}

.text-bold {
    font-weight: bold !important;
}
.text-purple{
    color: #d111ff;
}
// 覆盖vxe-table 样式
:root {
    --el-disabled-text-color: var(--el-text-color-regular);

    --vxe-ui-font-primary-color: var(--el-color-primary) !important;
    --vxe-ui-table-resizable-line-color: var(--el-border-color-lighter) !important;
    --vxe-ui-base-popup-border-color: var(--el-border-color-lighter) !important;
    --vxe-ui-table-border-color: var(--el-border-color-lighter) !important;
    --vxe-ui-table-row-hover-background-color: var(--el-bg-color) !important;
    --vxe-ui-layout-background-color: var(--el-bg-color) !important;
    --vxe-ui-table-row-height-default: 40px !important;
    // --vxe-ui-table-row-line-height: 32px !important;
    --vxe-ui-table-column-padding-default: 3px 0 !important;
    --vxe-ui-modal-header-background-color: var(--el-bg-color) !important;
    --vxe-ui-input-border-color: var(--el-border-color) !important;
    --vxe-ui-table-header-background-color: var(--el-fill-color-light) !important;
    --vxe-ui-font-disabled-color: var(--el-disabled-text-color) !important;
    --vxe-ui-input-disabled-color: var(--el-border-color) !important;
    --vxe-ui-font-size-default: 12px !important;
    --vxe-ui-font-color: var(--el-text-color-regular) !important;
    --vxe-ui-table-header-font-color: var(--el-text-color-primary) !important;
    --el-component-size: 28px !important;
    --el-checkbox-font-size: 13px !important;
    --vxe-ui-button-height-default: 28px !important;
    --vxe-ui-font-primary-lighten-color: var(--el-color-primary) !important;
    --el-menu-item-height: 40px !important;
}

.vxe-checkbox.is--disabled>input+.vxe-checkbox--icon {
    background-color: var(--el-fill-color-light);
}

.el-input__wrapper .el-input__inner {
    font-size: 13px;
}

// 解决vxe-grid表格横向滚动时，高度更改问题
.hasToolbar, .myVxeGridBox, .myVxeTable{
    .vxe-header--column,
    .vxe-body--column,
    .vxe-footer--column {
        vertical-align: middle ;
    }
}

.textEllipsis {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.myVxeGrid.vxe-grid .vxe-table--render-default, .myVxeTable.vxe-table.vxe-table--render-default{
    .vxe-header--column, 
    .vxe-table--header-wrapper,
    .vxe-table--body-wrapper,
    ::-webkit-scrollbar-track,
    ::-webkit-scrollbar-corner,
    .vxe-table--scroll-y-top-corner{
        background-color: var(--el-bg-color-overlay);
    }
}
// 自适应表格inner边框样式配置
.vxe-grid .vxe-table--render-default.border--inner{
    .vxe-body--row:last-of-type .vxe-body--column{
        background-image: none;
    }
    .vxe-table--footer-wrapper{ 
        border-top-width: 0;
    }
    .vxe-header--row:hover .vxe-cell--col-resizable:before{
        background-color: var(--vxe-ui-table-border-color);
    }
    .vxe-cell--col-resizable:before{
        background-color: transparent;
    }
    .vxe-table--border-line{
        border-width: 0;
    }
    .vxe-table--scroll-x-wrapper{
        &:before{
            border-top-color: transparent;
        }
        &:after{
            border-bottom-color: transparent;
        }
    }
    .vxe-table--scroll-x-right-corner:before{
        border-style: none;
    }
}

.el-popper.custom-tooltip{
    max-width: 500px!important;
    word-break: break-word;
    white-space: normal;
}
// 自定义滚动条样式
::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

::-webkit-scrollbar-track {
	background: transparent;
}

::-webkit-scrollbar-thumb {
	background: var(--el-text-color-placeholder);
	border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
	background: var(--el-text-color-secondary);
}
